The present invention relates to a dot matrix printer, such as an ink jet printer or the like.
In general, dot matrix printers are widely used to print output data from computers and the like. In recent years, high-density, high quality printing, using multi-pins, has been required, and near-letter-quality printing has been achieved with the dot matrix system.
On the other hand, the amount of data to be processed has steadily increased, and thus a high data-processing speed has also come to be required of such a printer.
FIG. 1 shows a control circuit of a conventional dot matrix printer, used to accomplish such high-speed and high-density printing.
First, a first microprocessor unit (MPU) 1 is connected to a host computer via an interface 2. MPU 1 receives and edits the data from the host computer, and performs the main control functions, such as interpreting of commands, referring to the contents of a character generator, the producing of a printing-dot image, and the like. A ROM 3 which stores drive programs to be executed by MPU 1, and which includes a character generator, is connected to MPU 1 via an internal bus 4. A RAM 5 which is used as a reception data buffer, a printing-dot image buffer, and the like, is also connected to MPU 1, via internal bus 4. A second microprocessor unit (MPU) 6, is connected to a printing head 8, via a head driver 7, to control the sending of data to printing head 8, the timing for writing the data, on the basis of timing data supplied by a timer 9, and the operation of carrier motor 10 and feed motor 11. MPU 6 is a one-chip microcomputer having a program ROM and a RAM on the same chip. A command to specify the operating mode, the printing data and the like are sent from MPU 1 to MPU 6, via an I/O port 12. Timer 9 designates the printing-dot timing and the operation timing for carrier motor 10 and the like, and generates an interruption signal to MPU 6.
In the prior art printer described above, the data-receiving and editing processes, printing head control, and carriage control are respectively executed by individual microprocessor units MPU 1 and MPU 6, so that the processes can be performed at a high speed. MPU 6 supplies the data to printing head 8, on a one-column unit basis. The data is printed by printing head 8, while the carrier is moved synchronously with the printing operation, and MPU 1 receives the next data to be printed.
In the foregoing conventional control system, the data is transmitted and received via I/O port 12. Thus, MPU 1 extracts the printing data from RAM 5, by an amount of only one byte, sets it into I/O port 12, and sends an interrupt signal, indicating that the data has been set therein, along a status line SL to MPU 6. After MPU 6 receives this signal, it reads the data set into I/O port 12, and then outputs the data to printing head 8, at the timing designated by timer 9. Thereafter, MPU 6 sends an interrupt signal, requesting the next data from MPU 1, along the status line.
As has been mentioned above, data has to be transmitted and received on a one-byte unit basis, between MPUs 1 and 6, and the data-transmitting and receiving operations should therefore be under strict timing control. Consequently, a considerable period of time is required for the transmission and reception of the data, and this constitutes a major obstacle to the aim of processing the data at high speed.